#define _CRT_SECURE_NO_WARNINGS 1

//int Add(int num1, int num2) {
//    // write code here
//    int m = 0;
//    int n = 0;
//    m = (num1 & num2) << 1;
//    n = num1 ^ num2;
//    while (m & n)
//    {
//        num1 = m;
//        num2 = n;
//        m = (num1 & num2) << 1;
//        n = num1 ^ num2;
//    }
//    return m | n;
//}

//int compare(void* e1, void* e2)
//{
//    return (*(int*)e1 - *(int*)e2);
//}
//
//int* findDisappearedNumbers(int* nums, int numsSize, int* returnSize) {
//    int i = 0;
//    static int arr[100000] = { 0 };
//    int arr2[numsSize];
//    int count1 = 0;
//    int count = 0;
//    qsort(nums, numsSize, sizeof(nums[0]), compare);
//    for (i = 0; i < numsSize; i++)
//    {
//        if (count1 == 0 || nums[i] != arr2[count1 - 1])
//        {
//            arr2[count1++] = nums[i];
//        }
//    }
//    int j = 0;
//    for (i = 1; i <= numsSize; i++)
//    {
//        if (arr2[j] == i)
//        {
//            if (j == count1 - 1)
//            {
//                ;
//            }
//            else
//            {
//                j++;
//            }
//        }
//        else
//        {
//            arr[count++] = i;
//        }
//    }
//    *returnSize = count;
//    return arr;
//}